MySQL คืออะไร? และ ไว้ทำอะไร?
หลังจากทำความเข้าใจกับ LAMP กันไปแล้ว รวมถึงเรื่อง Linux และ Apache ที่นี้ตัวต่อไปก็ คือ MySQL คือ อะไร และทำหน้าที่อะไร
MySQL คือ open source ถูกคิดค้นโดย MySQL AB ในสวีเดน และต่อมาถูก takeover โดย Sun Microsystems ในปี 2008 และก็ควบรวมกับ Oracle ในปี 2010 มี function การทำงานแบบ relation database management system (RDBMS) โดยอาศัย Structured Query Language (SQL) เป็นภาษาในสื่อสาร โดยเจ้าตัว MySQL นี้สามารถรันได้ทั้งบน Linux, UNIX และ Windows ซึ่งด้วยความหลากหลายของมันแล้ว แต่คนก็ยังคงใช้แต่กับงาน web-based ซะส่วนใหญ่ เพราะฉะนั้นจึงได้มีการออกแบบเจ้าตัว MySQL ให้เป็นส่วนหนึ่งในระบบ open source enterprise stack หรือที่เราเรียกว่า ” LAMP”
ก่อนที่จะไปลงลึกในรายละเอียด สงสัยกันไหมว่า และ database มันมีกี่แบบหละ
Database
ปัจจุบันมีการใช้งานหลักๆอยู่ 2 แบบ ตือ
1. Relational database หรือ ระบบฐานข้อมูลเชิงสัมพันธ์ เป็นการเก็บข้อมูลในรูปของตาราง (table) ในแต่ละตารางแบ่งออกเป็นแถวๆ และในแต่ละแถวจะแบ่งเป็นคอลัมน์ (Column) ซึ่งในการเชื่อมโยงกันระหว่างข้อมูลในตารางต่างๆ จะ เชื่อมโยงโดยใช้การอ้างอิงจากข้อมูลในคอลัมน์ที่กำหนดไว้ อาศัย RDBMS tools ในการควบคุม
2. LDAP database หรือ Lightweight Diretory Access Protocol ทำงานโดยอาศัย Active Directory (AD) เป็นไดเรกทอรี่เซอร์วิสในระดับองค์กร ที่ถูกออกแบบบนมาตรฐานของ Internet Technology เอาไว้รองรับการค้นหาทรัพยากรต่าง ๆ บนเครือข่ายขนาดใหญ่ และยังช่วย Admin จัดการบริหารเครือข่ายที่ซับซ้อนจากศูนย์กลางได้อย่างสะดวก AD เป็นการทำงานร่วมกันระหว่าง DNS (Domain Naming System) และ LDAP (Lightweight Diretory Access Protocol) ทำให้สามารถจะติดต่อเชื่อมโยง (interoperability) กับไดเรกทอรี่เซอร์วิสอื่นๆ ได้อีกด้วย และมีการพัฒนา DCOM (Distributed Component Object Model) ให้มีประสิทธิภาพในการกระจายแอพพลิเคชั่นได้ดียิ่งขึ้น AD จะมีโครงสร้างอยู่ 2 แบบคือ ทางกายภาพ (Physical Structure) และทางลอจิคอล (Logical Structure)
Install MySQL
บน Ubuntu repository จะเก็บไว้ในชื่อ mysql-server เราสามารถ เปิด console หรือ SSH เข้าไป run command ด้านล่างเพื่อ install
$ sudo apt-get update $ sudo apt-get install mysql-server $ sudo mysql_secure_installation
Step 1 — Installing MySQL
Install ผ่านทาง apt-get
$ sudo apt-get update $ sudo apt-get install mysql-server
Step 2 — Configuring MySQL
เพิ่ม security ให้กับ MySQL โดย run command ด้านล่าง และตอบ “Y” จากนั้น Enter
$ sudo mysql_secure_installation
Step 3 — Testing MySQL
ทำการ start MySQL ด้วยคำสังด้างล่าง เพื่อตรวจสอบ status ที่ได้
$ systemctl status mysql.service
● mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: en
Active: active (running) since Wed 2016-11-23 21:21:25 UTC; 30min ago
Main PID: 3754 (mysqld)
Tasks: 28
Memory: 142.3M
CPU: 1.994s
CGroup: /system.slice/mysql.service
└─3754 /usr/sbin/mysqld
ถ้าไม่สามารถ run command ด้านบนได้ ให้ลองใช้
$ sudo systemctl mysql start
จากนั้นลองตรวจสอบ status หลังจาก start เรียบร้อยแล้ว
$ mysqladmin -p -u root version
mysqladmin Ver 8.42 Distrib 5.7.16, for Linux on x86_64
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Server version 5.7.16-0ubuntu0.16.04.1
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 30 min 54 sec
Threads: 1 Questions: 12 Slow queries: 0 Opens: 115 Flush tables: 1 Open tables: 34 Queries per second avg: 0.006
Author: Suphakit Annoppornchai
Credit: https://saixiii.com,https://www.digitalocean.com
[…] ปัจจุบันมี production database ให้เราเลือกใช้อยู่มากมาย เช่น Microsoft SQL Server, Oracle Database, IBM DB2 และ MySQL ที่เป็นที่นิยมกันในระดับองกรค์ […]
[…] ครบหมดแล้ว ซึ่งจะเห็นว่าการใช้งาน MySQL ที่เรามีอยู่จำเป็นต้องใช้ command line SQL […]
[…] M = MySQL คือ database แบบ relational […]
[…] Sun Microsystems Inc. ในปี 2010 ซึ่งรวมถึงยึดเอา MySQL database มาด้วย ทั้งๆที่เป็น open source relational database […]
[…] server ซึ่งได้แก่ Apache, MySQL และ PhpMyAdmin หรือก็คือ LAMP […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]
[…] database ตัวอย่างเช่น ติดตั้ง MySQL แล้ว การจะเริ่มใช้งานอย่างไร […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]
[…] จากบทความที่แล้วเรื่อง SQL UNION Clause เป็นการเอาข้อมูล 2 table มารวมกันทั้งหมด ทีนี้เรามาดูว่าถ้าจะเลือกเอาเฉพาะข้อมูลบรรทัดที่มีเหมือนกันเท่านั้นใน 2 table จะใช้ SQL INTERSECT Clause แทน ซึ่ง database บางชนิดอาจจะไม่รองรับ SQL INTERSECT เช่น MySQL […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]
[…] Database, Oracle, MySQL […]